<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>

</body>
</html>

<script>
// 逻辑运算符


// 与 -> &&
  // 含义：与运算符 左右两边，都为 true，其表达式返回值 为 true，否则为 false
// console.log(false && true)

// 或 -> ||
  // 含义：或运算符 左右两边，只要一个为 true，其表达式返回值为 true;
      // 左右两遍 都为 false，其返回值 才为 false
// console.log(false || false || 0 || 999);

// 与 和 或 的总结：表达式的执行，每个「元素」的值不是 布尔值，会进行隐式转换为布尔值，进行进行运算符的逻辑判断
    // 但 逻辑运算符 的返回值 会改变「元素」本身的值吗？  --->  不会！！

// 与 和  或 的优先级：
  // 与 的优先级 大于 或

// ------------------
// 非 -> !
  // 含义：!表达式     ->  非运算符 将 表达式的返回值，隐式转换成布尔值，然后 取反
    // 取反的意思：  true  --取反-->   false

  // Boolean()
  // !!表达式  也可以 将 表达式 转成 布尔值
// console.log('!true', !true);
// console.log('!0', !0);

</script>

